#pragma once
#include "graphsearch.h"
#include <stack>
class IterativeDeepeningSearch :
	public GraphSearch
{
public:
	IterativeDeepeningSearch(void);
	~IterativeDeepeningSearch(void);

protected:
	void performSearch(node* start, node* goal, Grapher* gr=NULL, bool penalized=false, int maxExpandVectors=-1);
	const char* getFileName();

private:
	std::stack<queue_node> stack;
};

